Replace sleep BUS_RESCAN_WAIT_SEC with lspci-based GPU check; tweak MODULES_LOAD in config #133
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
@Witko et. al, I really love what you're doing with nvidia-xrun. This PR is the result of my playing around with the script & configs on my machine, trying to get things to work.
Background: I was getting sporadic general protection faults when running nvidia-xrun "as-is" from Git on my machine. Some salient specs:
Arch Linux (kernel: 5.2.9-arch1-1-ARCH)
(of course, with Arch being a rolling release distro, the kernel updates all the time...)Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
NVIDIA Corporation GF119M [NVS 4200M] (rev a1)
(nvidia-390xx
driver -- this driver seems to get updates surprisingly frequently, as well, for a legacy driver)Intel(R) Core(TM) i7-2760QM CPU @ 2.40GHz
so, not a super high-powered machine, by any stretch.. but still capable.
Originally, I had been using the nvidia-xrun package from the Arch AUR, until it started to fail on me sporadicatlly. I then noticed that the AUR package was flagged out of date as of roughly a month ago, so I cloned the git repo to get the latest.
After deploying the scripts & configs manually from git, I was still getting sporadic GP faults. That led me to tinker.
I now seem to be able to start nvidia-xrun. I think the main issue was the nvidia_drm "modeset" option. But to be honest, I'm still not 100% sure of the interplay between, for example,
nvidia_modeset
andnvidia_drm modeset=1
vs.nvidia_drm
with the modeset option omitted..The other changes in this PR were maybe not strictly necessary. But as I was troubleshooting, I came to like the idea of using an lspci-based verification that the GPU came up, instead of the sleep-based approach. (My rationale was: I added sleeps/slowdowns, thinking maybe the GP faults were caused by a race condition of some sort -- that was the first thing I thought of to explain why sometimes nvidia-xrun would start my x session and window manager just fine, but other times it wouldn't. Truth told, I still can't explain it... ¯_(ツ)_/¯ )
Any feedback is welcome.